package com.xinwangai.jingbai.service;

import com.xinwangai.jingbai.pojo.DTO.DictionaryDTO;
import com.xinwangai.jingbai.pojo.VO.DictionaryVO;
import com.xinwangai.jingbai.pojo.VO.DictionaryTypeVO;

import java.util.List;

/**
 * 字典服务接口
 *
 * @author guo.wenliang
 * @since 2025/1/15
 */
public interface DictionaryService {

    // ========== 字典表类型查询（只读） ==========
    
    /**
     * 获取字典类型列表（系统预定义）
     */
    List<DictionaryTypeVO> getDictionaryTypes();

    // ========== 字典数据管理 ==========

    /**
     * 新增字典数据
     */
    boolean addDictionary(DictionaryDTO dictionaryDTO);

    /**
     * 更新字典数据
     */
    boolean updateDictionary(DictionaryDTO dictionaryDTO);

    /**
     * 根据ID查询字典数据
     */
    DictionaryVO getDictionaryById(Long id);

    /**
     * 查询字典数据列表
     */
    List<DictionaryVO> getDictionaryList(DictionaryDTO dictionaryDTO);

    /**
     * 根据字典类型查询字典项
     */
    List<DictionaryVO> getDictionaryByType(String dictType, String status);
}